home *** CD-ROM | disk | FTP | other *** search
- Procedure Darstellen(Var DatF :Datafile);
-
- Var Obj1 :BildElement;
- TC : Char;
-
- Procedure GetSetupInfos(Var Obj :Bildelement);
- Begin
- Case Obj.Elementtyp of
- ED_CON1:BildElement(SetupInfo.Edsetup1):=Obj;
- ED_CON2:BildElement(SetupInfo.Edsetup2):=Obj;
- ED_CON3:Bildelement(SetupInfo.Edsetup3):=Obj;
- ED_Time:DateInfo:=Obj;
- ED_Info:If ED_InfoTyp(Obj).Typ=Container then
- If Enter_To_LibList(Obj)<0 then Error(110);
- end;
- End;
-
- Begin
- SaveCrtWindow;
- SaveColors;
- If Not Modeco80 then
- begin
- PlotWinCol:=Crt.black+16*Crt.LightGray;
- PlotHeadCol:=Crt.black+16*Crt.LightGray;
- end;
- MakeWindow(Plot_win,6,8,70,15,PlotWinCol,wok);
- With Plot_win do
- Window(X1+1,Y1+1,X1+width-2,Y1+height-1);
- MakeFrame(Plot_win,PlotWinCol,1);
- WriteToWindow(plot_win,7,1,PlotHeadCol,' Ausgabe der Zeichnung: '+HauptF+Dsuf+' ');
- ShowWindow(Plot_win);
- SetEditColors(blue,lightgray,yellow,blue);
- OpenPrOut(2,TC);
- Actual_ObJNr:=0;
- With Plot_win Do
- begin
- DisplayString(X1+3,Y1+6,PlotWinCol,'Plotte Zeichnungselement : ');
- DisplayReal(X1+32,Y1+6,PlotHeadCol,Actual_ObjNr,6,0,false);
- end;
- FillChar(DateInfo,sizeof(DateInfo),0);
- dateInfo.status:=65535;
- If TC<>Esc Then
- Begin
- FlushKbd;
- If DeviceInit<>'' then
- If NoError Then
- begin
- {$I-}
- Write(PrOutFile,DeviceInit);
- If AufDatei Then NoError:=IOresult=0;
- {$I+}
- end;
- PlotReset;
- InitBackSc;
- InitLayersetofPen;
- With SetUpInfo.PinstInfo Do
- If SpeedCom<>''then
- If NoError Then
- begin {$I-}
- Write(PrOutFile,SpeedCom,RealToInt(PlotSpeed*SpeedFac),EndSym);
- If AufDatei Then NoError:=IOresult=0;
- end; {$I+}
- Actual_StiftNr:=1;
- UsedLayers:=[];
- Repeat
- If (Actual_StiftNr=1) or
- (PlotLayers*UsedLayers*LayersetofPen[Actual_StiftNr]<>[]) then
- begin
- Buffptr:=0;
- Weiter:=true;
- SelectPen(Actual_StiftNr);
- (*$I-*)
- Init_LibMan;
- Seek(DatF,1);
- OK:=IoResult=0;
- (*$I+*)
- While Not(Eof(DatF)) and Ok and Weiter and Noerror Do
- Begin
- (*$I-*)
- BlockRead(DatF,Obj1,1);
- Ok:=IoResult=0;
- (*$I+*)
- If Ok and (Obj1.Status=0) then
- begin
- If Byte(Obj1.Elementtyp)<Byte(ED_CON1) Then
- begin
- If Obj1.Elementtyp=Macro Then
- ZeichneMac(Obj1)
- Else
- ZeichneaufBuf(Obj1,false);
- end else GetSetupInfos(Obj1);
- end;
- End;
- If Weiter Then ZeichneAufBuf(Obj1,true);
- end; { If Plotlayers }
- Inc(Actual_StiftNr,1);
- Until Not(Weiter) or (Actual_StiftNr>9);
- Pencolor(0);
- Moveto(0,0);
- With SetupInfo.PinstInfo do
- If NoError Then
- begin {$I-}
- If ExitCom<>'' Then Write(PrOutFile,Exitcom);
- If AufDatei Then NoError:=IOresult=0;
- end; {$I+}
- If DeviceExit<>'' then
- If NoError Then
- begin
- {$I-}
- Write(PrOutFile,DeviceExit);
- If AufDatei Then NoError:=IOresult=0;
- {$I+}
- end;
- ClosePrOut;
- Buffptr:=0;
- Weiter:=false;
- End
- Else Escape;
- DeleteWindow(Plot_win);
- RestoreColors;
- RestoreCrtWindow;
- End;
-